#ifndef TTF_FONT_HPP
#define TTF_FONT_HPP

#include <SDL_ttf.h>
#include "common.hpp"
#include "font.hpp"

namespace wolf {
/**
 * @brief Implements a True Type Font
 * @ingroup fontsMod
 *
 **/
class WOLF_DECLSPEC TrueTypeFont: public Font {
public:
	TrueTypeFont(const char *file, int ptSize = 8);
	TrueTypeFont(TTF_Font *font, bool autoDelete = true);
	~TrueTypeFont();

	void writeChar(Uint16 c, SDL_Surface *dst, int x, int y,
			const Color &color);
	int charWidth(Uint16 c) const;
	int fontSize() const;
private:
	TTF_Font *font;
	bool autoDelete;
};

}

#endif // TTF_FONT_HPP
